package com.yxx.mapper;

import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxx.entity.VisitLog;
import com.yxx.entityModel.vo.query.LogQuery;
import com.yxx.entityModel.vo.response.UserViewResponse;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 访问日志Mapper
 * @author yuxiangxun
 * @date 2025/1/24
 * @apiNote
 */
@Repository
public interface VisitLogMapper extends BaseMapper<VisitLog> {
    /**
     * 查询访问日志
     *
     * @param logQuery 访问日志查询条件
     * @return 访问日志列表
     */
    //List<VisitLog> selectVisitLogList(@Param("param") LogQuery logQuery);

    /**
     * 获取7天用户访问结果
     * @param startTime
     * @param endTime
     * @return
     */
    List<UserViewResponse> selectUserViewList(@Param("startTime") DateTime startTime,@Param("endTime") DateTime endTime);

    /**
     * 分页查询访问日志
     * @param logQuery
     * @return
     */
    List<VisitLog> selectVisitLogList(@Param("param")  LogQuery logQuery);

    /**
     * 清除一周前的访问日志
     * @param endTime 结束时间
     */
    void deleteVisitLog(@Param("endTime") DateTime endTime);
}
